package com.microframework.boot.fs.service;

import org.springframework.core.io.InputStreamResource;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.multipart.MultipartFile;

import io.minio.GetObjectResponse;

public interface IMinioService {
	
	public void createBucketIfMissing(String bucketName) throws Exception;
	public String uploadFile(String bucketName, MultipartFile file, String objectName) throws Exception;
	public GetObjectResponse downloadFile(String bucketName, String objectName) throws Exception;
	public void deleteFile(String bucketName, String objectName) throws Exception;
	public ResponseEntity<InputStreamResource> getThumbnail(String bucketName,String thumbnail);
	public String getFileExtension(MultipartFile file);
	public MediaType determineMediaType(String filename);

}
